Home media systems are evolving to include multiple media devices (servers or renderers) spread across multiple rooms. It is increasingly important that the content is rendered at a precisely controlled time for each device irrespective of the transport mechanism chosen to transmit from the server device to the rendering device (e.g. a wired, wireless, power line or other communication link). Another issue in building a home media network system is to provide the ability to easily scale by dynamically adding or removing server and rendering devices. It is desirable for this to be achieved whilst providing a rapid response to user events (e.g. pressing play, pause, and so on) irrespective of the source type (e.g. line-in, local media, internet streaming, and so on). Conventional systems do not satisfy three key constraints simultaneously: tight time synchronization, low latency media streaming and the ability to easily and dynamically scale the system.
Conventionally, systems needing tight synchronization between rendering devices use handshaking protocols such as the Real Time Streaming Protocol (RTSP), in addition to implementing large data buffers at network reception points. Synchronization is conventionally implemented in full at the network reception points. Large buffers are used to store enough data to allow smooth audio playback whilst handling the complex communication required to stall the server if those buffers are about to be full. Handshaking makes low-latency and flexible operation difficult to achieve with conventional approaches.
It would be desirable therefore to provide an improved media distribution system.